Files
PhoenixPE/Projects/PhoenixPE/Core/200-PreFlight.script

489 lines
51 KiB
Plaintext

[License]
//////////////////////////////////////////////////////////////////////////////////////////////////////////
//
// This script is part of the PhoenixPE project and distributed under the MIT License.
//
// Additional 3rd party tools, encoded files, and programs used by the project are the property
// of their respective authors and may be subject to their own license agreement.
//
// Copyright (c) 2014-2024 Jonathan Holmgren (Homes32)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all
// copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
// SOFTWARE.
//
//////////////////////////////////////////////////////////////////////////////////////////////////////////
[Main]
Title=Pre-Flight Check
Description=Project dependency checks.
Author=Homes32
Level=2
Selected=True
Mandatory=True
Version=1.1.5.0
Date=2024-06-29
[Variables]
// Minimum PEBakery version that has the command/feature set that is compatible with PhoenixPE.
%MinEngineVersion%=1.2.0
[Process]
Echo,"Starting Pre-Flight Check..."
Run,%ScriptFile%,CheckEngine
Run,%ScriptFile%,CheckPaths
If,%cb_CheckFreeSpace%,Equal,True,Run,%ScriptFile%,CheckDiskSpace
Run,%ScriptFile%,CheckTools
If,%cb_CheckForSupportedBuildVer%,Equal,True,Run,%ScriptFile%,CheckVerifiedBuilds
Run,%ScriptFile%,CheckWinREVersion
[#CheckPaths#]
// ===============================================================================================================================
// Name...........: CheckPaths
// Description....: Verify that %OutputDir% is not a root drive (ie. d:\). This will cause issues with creating/cleaning up
// the build environment.
// Syntax.........:
// Parameters.....:
// Return values..:
// Author.........: Homes32
// Remarks........:
// Related........: Called by [Process]
// ===============================================================================================================================
[CheckPaths]
System,SetLocal
// Check if output is the root of a drive
StrFormat,SPLIT,%OutputDir%,"\",0,%NumSplits%
If,%NumSplits%,Equal,1,Begin
Message,"Setting the OutputDir to the root of a drive is not supported.",Error
Halt,"Error: Setting the OutputDir to the root of a drive is not supported."
End
System,EndLocal
[#CheckEngine#]
// ===============================================================================================================================
// Name...........: CheckEngine
// Description....: Verify that PEBakery is using a supported configuration.
// Syntax.........:
// Parameters.....:
// Return values..:
// Author.........: Homes32
// Remarks........:
// Related........: Called by [Process]
// ===============================================================================================================================
[CheckEngine]
System,SetLocal
Echo,"Verifying PEBakery configuration..."
If,Not,%PEBakery%,Equal,True,Begin
Message,"This project is not compatible with WinBuilder.#$x#$xABORTING BUILD...",ERROR
Halt,"This project is not compatible with WinBuilder."
End
Set,%Message%,""
Set,%CriticalErr%,False
// Ensure the PEBakery command/feature set is compatible with PhoenixPE.
If,%PEBakeryVersion%,<,%MinEngineVersion%,Begin
Set,%Message%,"ERROR:#$x#$xThis version of PEBakery [%PEBakeryVersion%] is not supported. You must build this projecting with PEBakery [%MinEngineVersion%] or newer."
Message,%Message%,Error
Halt,%Message%
End
// Pebakery.ini - [Log]
IniRead,"%BaseDir%\PEBakery.ini","Log","DeferredLogging",%DeferredLogging%,Default=True
// PEBakeryCompat.ini - [PEBakeryCompat]
IniRead,"%ProjectDir%\PEBakeryCompat.ini","PEBakeryCompat","AsteriskBugDirCopy",%AsteriskBugDirCopy%,Default=False
IniRead,"%ProjectDir%\PEBakeryCompat.ini","PEBakeryCompat","AsteriskBugDirLink",%AsteriskBugDirLink%,Default=False
IniRead,"%ProjectDir%\PEBakeryCompat.ini","PEBakeryCompat","FileRenameCanMoveDir",%FileRenameCanMoveDir%,Default=False
IniRead,"%ProjectDir%\PEBakeryCompat.ini","PEBakeryCompat","LegacyBranchCondition",%LegacyBranchCondition%,Default=False
IniRead,"%ProjectDir%\PEBakeryCompat.ini","PEBakeryCompat","AllowLetterInLoop",%AllowLetterInLoop%,Default=False
IniRead,"%ProjectDir%\PEBakeryCompat.ini","PEBakeryCompat","LegacyRegWrite",%LegacyRegWrite%,Default=False
IniRead,"%ProjectDir%\PEBakeryCompat.ini","PEBakeryCompat","AllowSetModifyInterface",%AllowSetModifyInterface%,Default=False
IniRead,"%ProjectDir%\PEBakeryCompat.ini","PEBakeryCompat","LegacyInterfaceCommand",%LegacyInterfaceCommand%,Default=False
IniRead,"%ProjectDir%\PEBakeryCompat.ini","PEBakeryCompat","LegacySectionParamCommand",%LegacySectionParamCommand%,Default=False
IniRead,"%ProjectDir%\PEBakeryCompat.ini","PEBakeryCompat","IgnoreWidthOfWebLabel",%IgnoreWidthOfWebLabel%,Default=False
IniRead,"%ProjectDir%\PEBakeryCompat.ini","PEBakeryCompat","OverridableFixedVariables",%OverridableFixedVariables%,Default=False
IniRead,"%ProjectDir%\PEBakeryCompat.ini","PEBakeryCompat","EnableEnvironmentVariables",%EnableEnvironmentVariables%,Default=False
IniRead,"%ProjectDir%\PEBakeryCompat.ini","PEBakeryCompat","DisableExtendedSectionParams",%DisableExtendedSectionParams%,Default=False
IniRead,"%ProjectDir%\PEBakeryCompat.ini","PEBakeryCompat","AutoCompactIniWriteCommand",%AutoCompactIniWriteCommand%,Default=False
If,%DeferredLogging%,Equal,False,Set,%Message%,"WARNING: Logging --> Deferred Logging is disabled. This can significantly increase build time.#$x#$x"
If,%AsteriskBugDirCopy%,Equal,True,Begin
Set,%Message%,"%Message%ERROR: Compatibility --> Simulate Winbuilder's *.* bug in DirCopy is enabled. This option is for legacy projects only and cannot be used with %ProjectTitle%.#$x#$x"
Set,%CriticalErr%,True
End
If,%DisableExtendedSectionParams%,Equal,True,Begin
Set,%Message%,"%Message%ERROR: Compatibility --> Disable Extended Section Parameters. This option is for legacy projects only and cannot be used with %ProjectTitle%.#$x#$x"
Set,%CriticalErr%,True
End
If,%AsteriskBugDirLink%,Equal,True,Set,%Message%,"%Message%WARNING: Compatibility --> Simulate Winbuilder's *.* bug in folder.project is enabled. This option is for legacy projects only and may cause issues with folder level links.#$x#$x"
If,%FileRenameCanMoveDir%,Equal,True,Set,%Message%,"%Message%WARNING: Compatibility --> FileRaname and DirMove work like PathMove is enabled. This option is for legacy projects only and should not be used with %ProjectTitle%.#$x#$x"
If,%LegacyBranchCondition%,Equal,True,Set,%Message%,"%Message%WARNING: Compatibility --> Allow Deprecated Legacy Branch Condition is enabled. This option is for legacy projects only and should not be used with %ProjectTitle%.#$x#$x"
If,%LegacyRegWrite%,Equal,True,Set,%Message%,"%Message%WARNING: Compatibility --> Allow Variables in RegWrite's <HKey>, <ValueType> Argument is enabled. This option is for legacy projects only and should not be used with %ProjectTitle%.#$x#$x"
If,%IgnoreWidthOfWebLabel%,Equal,True,Set,%Message%,"%Message%WARNING: Compatibility --> Ignore Width of WebLabel is enabled. This may cause the script interfaces to appear different then the author intended. #$x#$x"
If,%OverridableFixedVariables%,Equal,True,Set,%Message%,"%Message%WARNING: Compatibility --> Overridable Fixed Variables is enabled. This option is for legacy projects only and should not be used with %ProjectTitle%.#$x#$x"
If,%EnableEnvironmentVariables%,Equal,True,Set,%Message%,"%Message%WARNING: Compatibility --> Enable Environment Variables is enabled. This option is for legacy projects only and should not be used with %ProjectTitle%.#$x#$x"
If,%AllowLetterInLoop%,Equal,True,Set,%Message%,"%Message%WARNING: Compatibility --> Allow Letter in Loop's is enabled. This option is for legacy projects only and should not be used with %ProjectTitle%.#$x#$x"
If,%AllowSetModifyInterface%,Equal,True,Set,%Message%,"%Message%WARNING: Compatibility --> Allow Set to modify interface controls. This option is for legacy projects only and should not be used with %ProjectTitle%.#$x#$x"
If,%LegacyInterfaceCommand%,Equal,True,Set,%Message%,"%Message%WARNING: Compatibility --> Enable legacy interface commands. This option is for legacy projects only and should not be used with %ProjectTitle%.#$x#$x"
If,%LegacySectionParamCommand%,Equal,True,Set,%Message%,"%Message%WARNING: Compatibility --> Enable legacy section parameter commands. This option is for legacy projects only and should not be used with %ProjectTitle%.#$x#$x"
If,%AutoCompactIniWriteCommand%,Equal,True,Set,%Message%,"%Message%WARNING: Compatibility --> Auto Compact .ini files on write commands. This option is for legacy projects only and should not be used with %ProjectTitle%.#$x#$x"
If,Not,%Message%,Equal,"",Begin
If,%CriticalErr%,Equal,True,Begin
Set,%Message%,"Critical issues were detected with your PEBakery settings. Please correct the following errors and try building again.#$x#$x%Message%"
Message,%Message%,Error
Halt,%Message%
End
Else,Begin
Set,%Message%,"Issues with your configuration were detected. Please check your PEBakery Settings.#$x#$x%Message%"
Message,%Message%,Warning,10
Echo,%Message%,Warn
End
End
System,EndLocal
[#CheckTools#]
// ===============================================================================================================================
// Name...........: CheckTools
// Description....: Verify that all tools needed by the project exist in the %Tools% directory.
// Syntax.........:
// Parameters.....:
// Return values..:
// Author.........: Homes32
// Remarks........:
// Related........: [ErrMissingTool], [Process]
// ===============================================================================================================================
[CheckTools]
Echo,"Verifying required 3rd party tools are present..."
If,Not,ExistFile,"%Tools%\%HostArch%\7z.exe",Run,%ScriptFile%,ErrMissingTool,"7z.exe"
If,Not,ExistFile,"%Tools%\%HostArch%\AutoIt3.exe",Run,%ScriptFile%,ErrMissingTool,"AutoIt3.exe"
If,Not,ExistFile,"%Tools%\%HostArch%\binmay.exe",Run,%ScriptFile%,ErrMissingTool,"binmay.exe"
If,Not,ExistFile,"%Tools%\%HostArch%\GetBinaryResource.exe",Run,%ScriptFile%,ErrMissingTool,"GetBinaryResource.exe"
If,Not,ExistFile,"%Tools%\%HostArch%\GetStringResource.exe",Run,%ScriptFile%,ErrMissingTool,"GetStringResource.exe"
If,Not,ExistFile,"%Tools%\%HostArch%\GWT.exe",Run,%ScriptFile%,ErrMissingTool,"GWT.exe"
If,Not,ExistFile,"%Tools%\%HostArch%\hiderun.exe",Run,%ScriptFile%,ErrMissingTool,"hiderun.exe"
If,Not,ExistFile,"%Tools%\%HostArch%\jj.exe",Run,%ScriptFile%,ErrMissingTool,"jj.exe"
If,Not,ExistFile,"%Tools%\x86\HiveUnload.exe",Run,%ScriptFile%,ErrMissingTool,"HiveUnload.exe"
If,Not,ExistFile,"%Tools%\x86\innounp.exe",Run,%ScriptFile%,ErrMissingTool,"innounp.exe"
If,Not,ExistFile,"%Tools%\x86\mkISOfs.exe",Run,%ScriptFile%,ErrMissingTool,"mkISOfs.exe"
If,Not,ExistFile,"%Tools%\%HostArch%\SetACL.exe",Run,%ScriptFile%,ErrMissingTool,"SetACL.exe"
If,Not,ExistFile,"%Tools%\x86\xml.exe",Run,%ScriptFile%,ErrMissingTool,"xml.exe"
// WaikTools
If,Not,ExistFile,"%Tools%\%HostArch%\DISM\dism.exe",Run,%ScriptFile%,GetWaikTools
If,Not,ExistFile,"%Tools%\%HostArch%\Oscdimg\oscdimg.exe",Run,%ScriptFile%,GetWaikTools
[#ErrMissingTool#]
// ===============================================================================================================================
// Name...........: ErrMissingTool
// Description....: Present an error message and halt the build if a required .exe is missing from the %Tools% folder.
// Syntax.........: Run,%ScriptFile%,<ToolName>
// Parameters.....: #1 - Tool Name
// Return values..:
// Author.........: Homes32
// Remarks........: INTERNAL FUNCTION
// Related........: [CheckTools]
// ===============================================================================================================================
[ErrMissingTool]
Message,"The build cannot continue because the required application [ #1 ] is missing.#$x#$xPlease re-download the project.#$x#$x If the issue persists you may need to add an exception for the [%Tools%] folder in your anti-virus software in order to prevent false-positives from recurring.",ERROR
Halt,"The build cannot continue because [ #1 ] is missing."
[#GetWaikTools#]
// ===============================================================================================================================
// Name...........: GetWaikTools
// Description....: Download missing/required WAIK tools (oscdimg, etc.) using JFX's GWT.exe
// Syntax.........:
// Parameters.....:
// Return values..:
// Author.........: Homes32
// Remarks........: Note: GetWaikTools has been discontinued as of v21.04. Will need to rewrite this function to use adksetup.exe
// Related........: Called by [CheckTools]
// ===============================================================================================================================
[GetWaikTools]
Echo,"Downloading required tools from Windows 10 ADK...#$x#$xThis will only need to be done once."
ShellExecute,Open,"%Tools%\%HostArch%\GWT.exe","-Win10 -Win10dism -Silent -folder:#$q%ProjectTemp%#$q"
DirCopy,"%ProjectTemp%\ADK_6\x86\*.*","%Tools%\x86"
DirCopy,"%ProjectTemp%\ADK_6\amd64\*.*","%Tools%\x64"
If,Not,ExistFile,"%Tools%\x64\Oscdimg\oscdimg.exe",Halt,"Error downloading required Windows 10 ADK tools. The build cannot continue."
// Don't waste disk space with these, we will use the OS versions (DISM required for Win7 Compatibility shim PhoenixAPI_DISM)
//DirDeleteEx,"%Tools%\x86\DISM"
DirDeleteEx,"%Tools%\x86\BCDBOOT"
//DirDeleteEx,"%Tools%\x64\DISM"
DirDeleteEx,"%Tools%\x64\BCDBOOT"
[#CheckVerifiedBuilds#]
// ===============================================================================================================================
// Name...........: CheckVerifiedBuilds
// Description....: Verify if the source is a known working version. If not warn the user that there may be issues.
//
// Version OS Build Release Date Codename Marketing Name Support Status
// ------- ----------- ------------ ------------- ------------------------- -------------------------
// Win10 1507 10.0.10240 07/29/2015 Threshold 1 RTM Not Verified
// 1511 10.0.15086 07/29/2015 Threshold 2 November Update Not Verified
// 1607 10.0.14393 08/02/2016 Redstone 1 Anniversary Update Not Verified
// 1703 10.0.15063 04/05/2017 Redstone 2 Creators Update Not Verified
// 1709 10.0.16299 10/17/2017 Redstone 3 Fall Creators Update Verified
// 1803 10.0.17134 04/30/2018 Redstone 4 Spring Creators Update Verified
// 1809 10.0.17763 11/13/2018 Redstone 5 October 2018 Update Verified
// 1903 10.0.18362 04/21/2019 19H1 May 2019 Update Verified
// 1909 10.0.18363 11/12/2019 19H2 November 2019 Update Verified
// 2004 10.0.19041 05/28/2020 20H1 May 2020 Update Verified
// 2009 10.0.19042 10/20/2020 20H2 October 2020 Update Not Verified
// 10.0.19043 05/18/2021 21H1 May 2021 Update Not Verified
// 10.0.19044 11/16/2021 21H1 November 2021 Update Not Verified
// 10.0.19045 06/28/2022 22H2 Windows 10 2022 Update Not Verified
// Win11 21H2 10.0.22000 10/04/2021 Sun Valley Experimental
// 22H2 10.0.22621 09/20/2022 Sun Valley 2 Verified
//
// Syntax.........:
// Parameters.....:
// Return values..:
// Author.........: Homes32
// Remarks........: As a general rule PhoenixPE will attempt to support the 2 most recent verified builds.
// Related........: Called by [Process]
// ===============================================================================================================================
[CheckVerifiedBuilds]
System,SetLocal
// Minimum supported version
Set,%MinimumSourceVer%,"10.0.16299.0"
// Supported Sources (x.x.x - do not include SPbuild)
Set,%aSupportedVersions%,10.0.17634|10.0.17763|10.0.18362|10.0.18363|10.0.19041|10.0.22621
// Latest Verified Source - This string is used in the warning message if the user is attempting to use an unverified source.
Set,%MostRecentVerifiedSource%,"* Win10: 10.0.19041 - May 2020 Update (20H1) 2004#$x* Win11: 10.0.22621 - 22H2"
Echo,"Checking source version against known working builds..."
If,%SourceVer%,Smaller,%MinimumSourceVer%,Begin
Message,"Unsupported Source!#$x#$xBuilding with Windows version [%SourceVer%] sources are not supported.#$x#$xPlease select a valid Windows 10 Source.",Error,10
Halt,"Unsupported Windows source version [%SourceVer%]"
End
// Remove the SPBuild for this comparison
StrFormat,NTrim,%SourceVer%,%tmp_SourceVer%
StrFormat,EndTrim,%tmp_SourceVer%,".",%tmp_SourceVer%
List,Pos,%aSupportedVersions%,%tmp_SourceVer%,%VerPos%
If,%VerPos%,Equal,0,Begin
Echo,"Warning: This Windows source version [%SourceVer%] has not been tested.",Warn
Message,"This Windows source version [%SourceVer%] has not been tested and verified to be compatible with PhoenixPE. This doesn't necessarily mean the build will fail, but if you run into problems you will be on your own.#$x#$xSome project scripts might not work with an untested/unknown source!#$x#$xIf possible please use the most recent verified source - #$x#$x%MostRecentVerifiedSource%",Warning,10
End
System,EndLocal
[#CheckWinREVersion#]
// ===============================================================================================================================
// Name...........: CheckWinREVersion
// Description....: Make sure WinRE.wim version matches install.wim version or we can run into trouble.
// Syntax.........:
// Parameters.....:
// Return values..:
// Author.........: Homes32
// Remarks........:
// Related........: Also called by 210-Core.script after WinRE.wim is extracted from install.wim (This only happens if WinRE.wim
// has not yet been cached).
// ===============================================================================================================================
[CheckWinREVersion]
// If we are using boot.wim or WinRE.wim hasn't been extracted yet skip the version check.
If,ExistFile,"%ProjectCache%\WinRE.wim",Begin
Echo,"Verifying WinRE version..."
WimInfo,"%ProjectCache%\WinRE.wim",1,WINDOWS/VERSION/MAJOR,%imgVerMaj%
WimInfo,"%ProjectCache%\WinRE.wim",1,WINDOWS/VERSION/MINOR,%imgVerMin%
WimInfo,"%ProjectCache%\WinRE.wim",1,WINDOWS/VERSION/BUILD,%imgVerBld%
WimInfo,"%ProjectCache%\WinRE.wim",1,WINDOWS/VERSION/SPBUILD,%imgVerSPBld%
Set,%WinREVer%,"%imgVerMaj%.%imgVerMin%.%imgVerBld%.%imgVerSPBld%"
// Only check if 20H2 or newer. 20H1 and previous builds are fine.
If,%SourceVer%,Bigger,10.0.19041.264,Begin
If,Not,%WinREVer%,Equal,%SourceVer%,Begin
Echo,"Warning: Version mismatch. WinRE is not the same version as the source image. This may result in build failures.",Warn
Message,"Warning: Version Mismatch#$x#$xThe WinRE image is not the same version as the Windows source (install.wim).#$xThis doesn't necessarily mean the build will fail, but the resulting PE environment may be unstable.#$x#$xProceed at your own risk.#$x#$xInstall.wim: %SourceVer%#$xWinRE.wim: %WinREVer%",Warning,10
End
End
End
[#CheckDiskSpace#]
// ===============================================================================================================================
// Name...........: CheckDiskSpace
// Description....: Make sure we have the minimum amount of free disk space required to build.
//
// Minimum Free Space is somewhat arbitrary, as we can't be sure what the final build size will be with
// whatever apps, features, etc. the user decides to include.
//
// For the purpose of this check we are primarily making sure we have the space needed to:
// - extract our base .wim image and cache it
// - extract the contents of the base .wim image to %TargetDir%
// - copy files from install.wim for "core" features such as Explorer, etc. to %TargetDir%
// - compress the resulting files back into a .wim image in %OutputDir%
// Syntax.........:
// Parameters.....:
// Return values..:
// Author.........: Homes32
// Remarks........: If %TargetDir% doesn't exist yet GetFreeSpace will fallback to the drive letter specified by the path.
// Related........:
// ===============================================================================================================================
[CheckDiskSpace]
System,SetLocal
// Set minimum space required to 5 GB
Set,%MinimumFreeMegabytes%,5120
Math,Mul,%MinimumFreeBytes%,%MinimumFreeMegabytes%,1048576
StrFormat,IntToBytes,%MinimumFreeBytes%,%HumanReadableMinimumFreeSpace%
// Check %TargetDir% & %Workbench%
System,GetFreeSpace,%TargetDir%,%FreeMegabytes%
Math,Mul,%FreeBytes%,%FreeMegabytes%,1048576
StrFormat,IntToBytes,%FreeBytes%,%HumanReadableFreeSpace%
If,%FreeMegabytes%,Smaller,%MinimumFreeMegabytes%,Begin
Echo,"Warning: You have less then %HumanReadableMinimumFreeSpace% of free disk space on your target drive [%TargetDir%]. This may result in build failures.",Warn
Message,"Warning: You only have [%HumanReadableFreeSpace%] free disk space on your target drive, which is less then the recommended %HumanReadableMinimumFreeSpace%. This may result in build failures.",Warning,10
End
// Check %OutputDir%
System,GetFreeSpace,%OutputDir%,%FreeMegabytes%
Math,Mul,%FreeBytes%,%FreeMegabytes%,1048576
StrFormat,IntToBytes,%FreeBytes%,%HumanReadableFreeSpace%
If,%FreeMegabytes%,Smaller,%MinimumFreeMegabytes%,Begin
Echo,"Warning: You have less then %HumanReadableMinimumFreeSpace% of free disk space on your output drive [%OutputDir%]. This may result in build failures.",Warn
Message,"Warning: You only have [%HumanReadableFreeSpace%] free disk space on your output drive [%OutputDir%], which is less then the recommended %HumanReadableMinimumFreeSpace%. This may result in build failures.",Warning,10
End
System,EndLocal
[#SetDefaultOptions#]
// ===============================================================================================================================
// Name...........: SetDefaultOptions
// Description....: Sets script options to default values.
// Syntax.........:
// Parameters.....:
// Return values..:
// Author.........: Homes32
// Remarks........:
// Related........: btn_SetDefaultOptions
// ===============================================================================================================================
[SetDefaultOptions]
WriteInterface,Value,%ScriptFile%,Interface,cb_CheckForSupportedBuildVer,True
WriteInterface,Value,%ScriptFile%,Interface,cb_CheckFreeSpace,True
[#ToggleAdvancedOptions#]
// ===============================================================================================================================
// Name...........: ToggleAdvancedOptions
// Description....: Show/Hide advanced options in the script interface.
// Syntax.........:
// Parameters.....:
// Return values..:
// Remarks........:
// Related........:
// ===============================================================================================================================
[ToggleAdvancedOptions]
System,SetLocal
ReadInterface,Visible,%ScriptFile%,Interface,bvl_AdvancedOptions,%state%
If,%state%,Equal,False,Begin
If,Question,"WARNING!#$x#$xAdvanced options are intended for expert users only!#$x#$xModifying advanced options without knowing what you are doing can cause permanent damage to your project and may result in unexpected behavior and/or build failures.#$x#$xAre you sure you want to continue?",Begin
Set,%Toggle%,True
WriteInterface,Resource,%ScriptFile%,Interface,btn_AdvancedOptions,Advanced_Exit_16.png
WriteInterface,Tooltip,%ScriptFile%,Interface,btn_AdvancedOptions,"Hide Advanced Options"
End
Else,Set,%Toggle%,False
End
Else,Begin
Set,%Toggle%,False
WriteInterface,Resource,%ScriptFile%,Interface,btn_AdvancedOptions,Advanced_16.png
WriteInterface,Tooltip,%ScriptFile%,Interface,btn_AdvancedOptions,"Show Advanced Options"
End
WriteInterface,Visible,%ScriptFile%,Interface,cb_CheckForSupportedBuildVer,%Toggle%
WriteInterface,Visible,%ScriptFile%,Interface,cb_CheckFreeSpace,%Toggle%
WriteInterface,Visible,%ScriptFile%,Interface,bvl_AdvancedOptions,%Toggle%
System,EndLocal
[#ShowScriptInfo#]
// ===============================================================================================================================
// Name...........: ShowScriptInfo
// Description....:
// Syntax.........:
// Parameters.....:
// Return values..:
// Author.........: Homes32
// Remarks........:
// Related........: btn_ScriptInfo
// ===============================================================================================================================
[ShowScriptInfo]
Message,"This script verifies that essential tools are available, PEBakery is correctly configured, and that the selected source files are supported."
[#Interface#]
// ===============================================================================================================================
// Name...........: Interface
// Description....:
// Syntax.........:
// Parameters.....:
// Return values..:
// Author.........: Homes32
// Remarks........:
// Related........:
// ===============================================================================================================================
[Interface]
btn_SetDefaultOptions=,1,8,543,5,25,25,SetDefaultOptions,SetDefaults_16.png,True,"__Restore Defaults"
btn_AdvancedOptions=,1,8,574,5,25,25,ToggleAdvancedOptions,Advanced_16.png,True,"__Show Advanced Options"
btn_ScriptInfo=,1,8,605,5,25,25,ShowScriptInfo,Help_16.png,True,"__Script Info"
bvl_AdvancedOptions="Advanced Options",0,12,5,50,200,115,8,Bold
cb_CheckForSupportedBuildVer="Verify Source Build Number",0,3,12,64,150,18,True,"__Check and see if the Win10 build version has been tested with this project."
cb_CheckFreeSpace="Verify Free Disk Space",0,3,12,84,150,18,True,"__Verify we have the free disk space required to build this project."
[InterfaceEncoded]
Advanced_16.png=1722,2396
SetDefaults_16.png=2475,3404
Help_16.png=2830,3868
Advanced_Exit_16.png=705,1048
[AuthorEncoded]
lists.png=10008,13436
Logo=lists.png
[EncodedFile-AuthorEncoded-lists.png]
lines=3
0=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
1=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
2=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
3=sCpCIOILp///7G/fv3/xeAXLDhoRhz38F0QlitVrXBYFAYjUaVwWBQG41GFQCujp9ski2VSjknjixRs1gssFgsyMvL4+56sjlWphh2HGfUAQTmhwB8x9ALtqJFBraMWQXWSVxw24P19/cL+vv7icSEAAQrVqww5+fn6/Py8vQmkynLYrEYAHZOQKFQQKPRwGq1wmKxQKfTQalUZmTr0yEQCKC/v78DIwSYtvoH5k8DkD2I/WArWhJgixlVYMkgxMh8wkIAGY+Qf9TX17fX19eTmU8RAGF1dXX+ypUrbYWFhSaJRGLy+XyaYDAIpVIJjUYDtVoNvV4PtVo9qR3Q3G43WltbWzGaANPCXP/I5EeUgI0CNGATQtrhv+VgNcBCMQEC3iMRNF/gIrA3EXkUp/wvNBqNyvXr11vXr19fWFBQYLZarSadTqdlGLbzqVqtzogUx48fx/XXX/9vYDWmA2wlUAhpNoKaDObbBISGn6PAljET9b8QCMC/OVI1AF/4YrCEJo/8Q+xyucQff/yx4+OPP24k7zOZTOq1a9da169fX2iz2cw5OTkmnU6nBdiOaWq1GhqNhiMFTdNwOp3d4EVPmGYGkGC+CMCAZW4EI/MGRPjE/i8UE5CqBfgk4ApfkUwAacpj0uF0On1jkWLdunWjSCEWi+FyuToxMv8/pbn/8S5uLkEKRlLvJvKDktcXEsh4+ONLN/6JyCDFGKTAaBMiys7OlmzatClr48aNeRcuXPjqjTfeOAy2BNwNthwshmmSYL5+6NS7SoDRgl9oJABGj5OMfTzfgG8eSCo8lRDpSMFNn4MVtgus8F0YWfc3ajfwyWK+ogAG7A9H/IGFKOyxIBjjke8nTOQsZkIKIhsyk+pB8nKvGTEB85kIulwnAMYb93imIpUYqRFDKikkw++Pg1X1IbCaIHXRx7SwUFZrXK5kSAW5jgRGm7N0hBiPFCIka8koRiqAZyQCIANbxNyCbzomIgU5l2y3RyKAyzoKWMRojEUKvnxI2nfStf+ZfPEiFh7Gk82VYjIXsYhFzCv+PyKxeAHXrtLcAAAAAElFTkSuQmCCeJzjzMksLinWK8hLZxgFIxBIqOOX5/LoTWJkAADgSwUtNa/IAwEAAAACAAAAIQAAABgnAAAAAAAAAQAAAAAAAAAAAAAA
[EncodedFile-InterfaceEncoded-Advanced_16.png]
lines=0
0=iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFHGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDUgNzkuMTYzNDk5LCAyMDE4LzA4LzEzLTE2OjQwOjIyICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTEwLTIwVDE5OjQwOjExLTA1OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOS0xMC0yMFQxOTo0MToxNC0wNTowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOS0xMC0yMFQxOTo0MToxNC0wNTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1YTYzZjFkZC01OTdlLTI3NDQtOGZkZi0yMzE1OGY2ODI0MGQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NWE2M2YxZGQtNTk3ZS0yNzQ0LThmZGYtMjMxNThmNjgyNDBkIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NWE2M2YxZGQtNTk3ZS0yNzQ0LThmZGYtMjMxNThmNjgyNDBkIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo1YTYzZjFkZC01OTdlLTI3NDQtOGZkZi0yMzE1OGY2ODI0MGQiIHN0RXZ0OndoZW49IjIwMTktMTAtMjBUMTk6NDA6MTEtMDU6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE5IChXaW5kb3dzKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5IwujTAAABRElEQVQ4EY3BMWsaYQAA0LcFCoFCcQhmC8Vf0UIhkFBSkjFkrjh0SYkOdjBgoXO3DoFkOdcOOmpvKBZp4n0mepXGpfdTIjh4GCx5z3+U0UMHe57gBQ7wzMInDHGDUwsbOEbJii18RoYmDtHGAH1c4DXOMcMVSnLeIkMPCaYISJFignsk6CLDiZzn+IIhYgREqKKKCAExEjSxacUrzBDQQNFSEQ0ETHEkZx9nuMAELRQ8VkALI7RRR9lcBzf4hRQ169WQYoAhuuZ+YIgBUtSsV8Mf/MQ1eubKqKONEVooeKyAFu4Q4QwVOUeYIqCBoqUiGggY470Vm2giQYyACFVUESEgxm98w7acE2ToIsFfjJEixQj3uEUXGSpySrjCDOfYxSX6GOA73uAU/3CJHStKOMaGhY+4xgRfLb3DS0+whw5ifLDGA/VqZBR5sRzSAAAAAElFTkSuQmCCeJzjd0wpS8xLTk2JNzTTK8hLZxgFIwrsYsMvPyXbKYORAQCFSAfJtGHebQEAAAACAAAAJwAAALoGAAAAAAAAAQAAAAAAAAAAAAAA
[EncodedFile-InterfaceEncoded-SetDefaults_16.png]
lines=0
0=iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAHEGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTEwLTIxVDE3OjIxOjEyLTA1OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOS0xMi0wMlQyMTo1MTo1Mi0wNjowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOS0xMi0wMlQyMTo1MTo1Mi0wNjowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpiMWM3ZDhlNS1mMGMxLTMwNDgtOGNiOS03YWU4YjgyNDgyNmQiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDowNzhkNDM1MC04NWRmLTg4NDQtOTY0Mi1lYTIxNmU3YjUwNDIiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpmMDM1MDg3Mi1hYmUxLWU5NDAtOTE2NC1kYzRjMzdjOGIwOTUiPiA8ZGM6Y3JlYXRvcj4gPHJkZjpTZXE+IDxyZGY6bGk+SG9tZXMzMjwvcmRmOmxpPiA8L3JkZjpTZXE+IDwvZGM6Y3JlYXRvcj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpmMDM1MDg3Mi1hYmUxLWU5NDAtOTE2NC1kYzRjMzdjOGIwOTUiIHN0RXZ0OndoZW49IjIwMTktMTAtMjFUMTc6MjE6MTItMDU6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE5IChXaW5kb3dzKSIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6MDdmNDNiMDctMTg1NC1hNjQwLWEwM2UtYTQxMTM2YTA0ODA2IiBzdEV2dDp3aGVuPSIyMDE5LTEwLTIxVDE3OjIxOjQ3LTA1OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmIxYzdkOGU1LWYwYzEtMzA0OC04Y2I5LTdhZThiODI0ODI2ZCIgc3RFdnQ6d2hlbj0iMjAxOS0xMi0wMlQyMTo1MTo1Mi0wNjowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PlYy9voAAAJBSURBVDiNpdHLThNRHAbwvkCjpalcSyyUEDo09Jw5MxZeggXdQHSpa96ARTclolWpLYtG20IDwdpaoeVOW63G0gvEmEaj3cFKYrxMXLjw88wAbQ3smOQ3OTn/73yZiw6A7jK0G9tjJ0rcPmtnB8zNFbnjU0VtT52VWD1/UcE4KzOFw39K3D6D44NDYRWeOVdQYKoxDue8YxjeH4b1lRXm5S70v+7HSHlkjO83FeSZkcNFnAUnDFsGuOIu7L0v4M7GbXRlusDeMGO9QMyIHikrYSA7ACEnQF2LuyLkrIzuTDd6Q704rB1CvabWp6B/qYeYFT31AmlTqtrX7XAmb2AwLsCyZoFz2wn7th2GqAHxfEI7nM6voW2+DY4dB8QNsVovsKVsCl2myOXyGrpA0LHSAWOsBZOxSeAL8LH0GWJYRGeyE/KqDHFFVOoFQkJQBucFpFNb+JH/gxeJFMx+M4SADW/TZdR2jnAzdAtXo1cgJ2XQ51TVKGBLrGqJXofkl7C5uotvld9YiC/hSSyCr8VfmF6cQcucAUPPhkAX6ZnGK9Aw9UhRCdeCJhAvQblwAPzkk+9ApXgA6z0rLGELWISBRuiZxkckQWLkIIUkGH1G9Ln7UPtUA/4Co75R6O/rIT2VoGaaNH4jmSM6EiAu4ieQgzJava2QZ2RMBCZgvmsGDVLweTOXeqZR8Jic8JFx8ogosl9Gj7cHpmkTqJ8/7iwvmCUqRcuc5i8q0JGHpJ08IG6uyB1rvNrarc18RHeu4DL+AeXUQV071uymAAAAAElFTkSuQmCCeJwTCk4tcUlNSyzNKSmONzTTK8hLZxgFIwes5sQv/03zkSgjAwBGXgl7UO9x9wEAAAACAAAAKgAAAKsJAAAAAAAAAQAAAAAAAAAAAAAA
[EncodedFile-InterfaceEncoded-Help_16.png]
lines=0
0=iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAHAWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAxOC0wMi0yMlQxNjo1OTo1MC0wNjowMCIgeG1wOk1vZGlmeURhdGU9IjIwMTktMTItMDJUMjE6NTM6MDQtMDY6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMTktMTItMDJUMjE6NTM6MDQtMDY6MDAiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6YWQ2OTFmMzItY2FiZC1hZTQzLTlmNjAtMzk5YjQyOTBlMTNiIiB4bXBNTTpEb2N1bWVudElEPSJhZG9iZTpkb2NpZDpwaG90b3Nob3A6OTBjZmFlNjAtYWJhZS1iNTQ3LWIyODEtOWYxNzg2YzM1NjQ2IiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6MzUwYTZiYzMtZDFiMi03MjRjLTlmZWQtY2RmYTM4YzhjM2FkIj4gPGRjOmNyZWF0b3I+IDxyZGY6U2VxPiA8cmRmOmxpPkhvbWVzMzI8L3JkZjpsaT4gPC9yZGY6U2VxPiA8L2RjOmNyZWF0b3I+IDx4bXBNTTpIaXN0b3J5PiA8cmRmOlNlcT4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNyZWF0ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6MzUwYTZiYzMtZDFiMi03MjRjLTlmZWQtY2RmYTM4YzhjM2FkIiBzdEV2dDp3aGVuPSIyMDE4LTAyLTIyVDE2OjU5OjUwLTA2OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo4MmNhNWFiYy05Mzg0LWUwNGYtOGE5NC0yMTk1NjY1NjY1YTUiIHN0RXZ0OndoZW49IjIwMTgtMDItMjJUMTc6MTA6MDUtMDY6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmFkNjkxZjMyLWNhYmQtYWU0My05ZjYwLTM5OWI0MjkwZTEzYiIgc3RFdnQ6d2hlbj0iMjAxOS0xMi0wMlQyMTo1MzowNC0wNjowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PozE0ngAAAOzSURBVDgRBcF9TJR1AMDx7/N7nnuOez/kxUJe4q2pWEgoykxLpqkzx6bhlszN/soZ/dE0W9bWZrVZ2WYt/ypn5VrmzDkZZk2INoRyNJEUUDg4TuC4g7vjjrvjHu7uefp8pJljb2KymMlr2g5rq5H0ZQj6V+mzwYOh4qrGbDyadqN1GfOhK7Hp2cV4VQWRE5+SF42QUVUUAEOSkDJZsMvuQEg68/OgfOBPjzvf4xnDpArW1xQe2rxS/XB/Q8kPzlnv6blYXJeEAEB+Z8MGTOllrE0b13V4uXXk3NDuS3/4rYmoTnGeDUk30f1PkNvDmntQz3/5mecKm2o8//6WGByNY7ehmI0Mec9Xlvw6rf51+Mv7K3IzBmff2sgbB2rJdZpJpZa5NzzJR+fv0dMxwqPZqq0XT37cvqbo/JapvpFl+fPtGxhv2PHjkauxuqJMFpdL5qtTO3A7ZMa8fnJtBmUlKissaR75UmgzER66K4qa1ttVqafvttBLi9d868lpTvkXWVloxunI4cLVfg6/e43GQ9c4e3GAWCDECjVJYikBqsTd30e4mSw9aq0tt4ontvx9vZ4lCi0SmayO2ST45dYYfQNR5r0ZkokkTruG50mYwcdRYnGNwHiQjmHdpW3b2iYixZV74sFFTMJAUWQkIZHSdHwTi5w8VsXpo2WMjgU5ezmA1e7G5bCQ67IyN7FApm7TdpFWFIvIGiiKjCwkxn0R7g/O09pSzmfHy+m6M8He40MMzTgoL3ZiiBzUHDsm1YJsMUtCHfmvU813oMiCJ/4Y4WgKcszUP2sFC1zuijA6qlJT5ULHhGq2ogsHT6+uQNztva8UxWba66rrT10fnkMsazhtKkIxOPeTB99kmP5HOgWVuUjChCzMWK0qWtLOltUWTe3u/VoUKNm/D1Yu9U9rglQ8jWwSxGMp9r5Uxqu7XqTt8CYcFkEqo+ByWPEFFNbWV/Oa5cHV2FR4WgQmw2yd6Gl7v7WIuTmZQDBJPLFMy+5KtjWWcGRfAZKRQVWt+OYkYvYyPtm1EOHCF+8FH3iR366vRQuEppsb3SPyuqr9XQNLUjaR5nr3FOGFBT74ZoBRv5m47iSvZBXfn3DP1E5d2TP43Y3Hsm4gH9/8AlmbHWMp9XBnafbOtj01lSa7rdQbynDrxgQR3DQ0VvB6UwFndgban5q82eqZiD6QRscR2SwKgGToaLKKP5Tu3Gib7Fxd4Ws5+Upd82JuwypTNqMXJANeOTxwCd9i91g4jaSawTAA+B9saZuyCHkkigAAAABJRU5ErkJggnic4/ZIzSmINzTTK8hLZxgFIw7wceOXd9V7kMTIAAAhOQWdbDOZ9gEAAAACAAAAIwAAAA4LAAAAAAAAAQAAAAAAAAAAAAAA
[EncodedFile-InterfaceEncoded-Advanced_Exit_16.png]
lines=0
0=iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAA7EAAAOxAGVKw4bAAACc0lEQVQ4y3XTX2jWZRQH8M/z+pttvIVuY5lMzDRppugioj9Q4EUlUZpFF1JCFBaV1BK68aJuQrqJrMibdhEGXrXKxDBqw4vSiNxGk7G37SJRKtvbmvNtre3V00WPISPP1cPzPefw/X7POVw5duArHML9V0oqIgKklFpxJ/oiYjql1IbFWIQ1EfFFSukqbMVARFSgyMVL8Ty2Y39K6QTuwBwuYG1K6R5sxOP4JqX0RkRUUkRIKT2AfRhDM5owg4WZaeR3DRNYjd0RcaDICcdwAPfhHBKGMZjxTtycsRbsz94QEbIPd+NH9ONVtF+Gtee//tz44UtYwiasRUfW/QO6ImL8crezqXszk9M4jmqBF3AdZjP1wfnFmel4SmkQG9CGR/FHQi8WdbQ2L9y18d4Vt1+/st5wsT586lTlrU09n/XMY/EKnsTvaMRUwo7b2lrWf7jtqeda25cvuHqu7q+GwvRENU4Mfv3M5iO93fMkrMMQBlArIuL9vs0PflIuGhZc88gWf38/oOmW9WYPHkrLyi2vd61u/+DtsZ+X4GmsyTKPRkQ3FFuWNqeuVes2zJwcMnX4c81PbFP79jvTx48p1WpLPjpTfQ03ZPMmUcatKaUjEXFGROhetWL45NbHYubseFR7DsbsxGSM7nw5Dt/UcaGhlIYz3Ureiy/xE56NiH9XeWj2z30rRyvvFHv2pPO9fZo+7TQ5MuLjqeqvcxfjHH7Bu3kCL6EvH5oUEbYvb03LSsXuztS4a3GpaKmXnD86O92/9/TZcj2iEb0R0ZXNfAgjETH6X4NL8eKN1zaWS6W2uYjJN8d+uws7s+aeiHjv/875HzeNCzhN2c5EAAAAAElFTkSuQmCCeJwTcUwpS8xLTk2Jd63ILIk3NNMryEtnGAUjBRxkwi/faXT+FiMDAK67CoVdXuX/AQAAAAIAAAAsAAAAwQIAAAAAAAABAAAAAAAAAAAAAAA